#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include<QUdpSocket>
namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT
    //枚举消息类型   普通消息、用户进入消息、用户离开消息
    enum MsgType{Msg,UserEnter,UserLeft};
public:
    explicit Widget(QWidget *parent,QString name);
    ~Widget();

private:
    Ui::Widget *ui;
signals:
    //关闭窗口的信号
    void closeWidget();
public:
    //关闭窗口的事件
    void closeEvent(QCloseEvent*);
public:
    void sendMsg(MsgType type);//发送消息
    void userEnter(QString username);//用户进入
    void userLeft(QString username,QString time);//用户离开
    QString getuserName();//获取用户名
    QString getMsg();//获取聊天消息
private:
    QUdpSocket *udp;//udp套接字
    qint16 port;//端口
    QString uName;//用户名

    void ReceiveMsg();//接收udp传来的消息

};

#endif // WIDGET_H
